package com.zhangtai.modules.entity.employee;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zhangtai.config.LongJsonDeserializer;
import com.zhangtai.config.LongJsonSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

		import java.math.BigDecimal;
	

/**
 * 招聘数据信息表
 *
 * @author chenshun
 * @email sunlightcs@gmail.com
 * @date 2021-04-07 09:56:12
 */
@Data
@TableName("tb_employee_recruitment")
public class EmployeeRecruitmentEntity implements Serializable {
	private static final long serialVersionUID = 1L;

			/**
		 * 主键id
		 */
			@TableId(value="id",type = IdType.AUTO)
		@JsonDeserialize(using = LongJsonDeserializer.class)
		@JsonSerialize(using = LongJsonSerializer.class)
			private Long id;

	@JsonDeserialize(using = LongJsonDeserializer.class)
	@JsonSerialize(using = LongJsonSerializer.class)
	private Long oid;

	/**
	 * 员工编号
	 */
	@JsonDeserialize(using = LongJsonDeserializer.class)
	@JsonSerialize(using = LongJsonSerializer.class)
	private Long employeeOid;
			/**
		 * 招聘负责人
		 */
			private String principal;
			/**
		 * 负责人工号
		 */
			private String principalUserCode;
			/**
		 * 公司id
		 */
			private Long orgId;
			/**
		 * 部门id
		 */
			private Long unitId;
			/**
		 * 职位id
		 */
			private Long jobId;
			/**
		 * 工作地点
		 */
			private String workAddress;
			/**
		 * 姓名
		 */
			private String name;
			/**
		 * 身份证号
		 */
			private String idcard;
			/**
		 * 个人电子邮件
		 */
			private String privatemail;
			/**
		 * 手机
		 */
			private String mobile;
			/**
		 * 性别
		 */
			private String gender;
			/**
		 * 生日
		 */
			private Date birthday;
			/**
		 * 预计入职时间
		 */
			private Date hiredate;
			/**
		 * 试用期
		 */
			private Integer probationday;
			/**
		 * 职级类别，1：专业2:管理，
		 */
			private Integer jobLevelType;
			/**
		 * 管理职级id
		 */
			private Long managementJoblevelId;
			/**
		 * 专业职级id
		 */
			private Long professionJoblevelId;
			/**
		 * 职级id
		 */
			private Long jobLevelId;
			/**
		 * 职级
		 */
			private String jobLevel;
			/**
		 * 0:社招，1：实习生
		 */
			private String socialTrainee;
			/**
		 * 是否管培生，2：不是，1：是
		 */
			private Integer isManagementTrainee;
			/**
		 * 招聘渠道,1:猎头，2：网站，3：内部推荐，4：外部推荐，5：现场招聘，6：校园招聘，7：其他
		 */
			private String channel;
			/**
		 * 招聘网站，1：广西人才，2：智联，3：58同城，4：前程无忧，5：猎聘网，6：其他
		 */
			private String recruitmentWeb;
			/**
		 * 推荐人-内部
		 */
			private String innerReferrer;
			/**
		 * 推荐人-外部
		 */
			private String outerReferrer;
			/**
		 * 条线id
		 */
			private Long lineId;
			/**
		 * 体系id
		 */
			private Long jobSystemId;
			/**
		 * 1：研究生，2：大学本科，3：大专，4：中专，5：技校，6：高中，7：初中，8：小学，9：文盲,0:博士
		 */
			private String degree;
			/**
		 * 专业
		 */
			private String speciality;
			/**
		 * 劳动合同/实习/返聘期限 ，选择列表：1：1个月，2：2个月，3：3个月，4：半年，5：1年，6：2年，7：3年
		 */
			private String laborContractYears;
			/**
		 * 0：全日制用工，1：非全日制用工，2：劳务派遣用工 ，3：退休返聘，4：管培生，5：实习生
		 */
			private String jobType;
			/**
		 * 工号
		 */
			private String code;
			/**
		 * 民族
		 */
			private String nation;
			/**
		 * 参加工作日期
		 */
			private Date beginworkdate;
			/**
		 * 【 1:未婚;2:已婚;3:丧偶;4:离婚;9:其他;】
		 */
			private String marital;
			/**
		 * 原月薪
		 */
			private BigDecimal beforeSalary;
			/**
		 * 原基本工资
		 */
			private BigDecimal beforeBasicSalary;
			/**
		 * 原模块工资
		 */
			private BigDecimal beforePerformanceSalary;
			/**
		 * 试用期月薪
		 */
			private BigDecimal proMonthSalary;
			/**
		 * 试用期基本工资
		 */
			private BigDecimal proBasicSalary;
			/**
		 * 试用期模块工资
		 */
			private BigDecimal proPerformanceSalary;
			/**
		 * 转正月薪
		 */
			private BigDecimal monthlySalary;
			/**
		 * 转正模块工资
		 */
			private BigDecimal performance;
			/**
		 * 转正基本工资
		 */
			private BigDecimal basicSalary;
			/**
		 * 原单位薪资
		 */
			private BigDecimal oldSalary;
			/**
		 * 面试评价表
		 */
			private String evaluation;
			/**
		 * 背调报告
		 */
			private String backreport;
			/**
		 * 简历原件
		 */
			private String resume;
			/**
		 * 录用邀约函
		 */
			private String invitationletter;
			/**
		 * 岗位薪资测算表
		 */
			private String measure;
			/**
		 * 银行流水/薪资证明
		 */
			private String prove;
			/**
		 * 其他附件
		 */
			private String otheratt;
			/**
		 * 0:待发起 ，1：填写完以保存 2：已发起待审批，3：审批完成，4：作废,5：offer已发送，6：流程被驳回
		 */
			private Integer status;
			/**
		 * 录入审批bpm地址
		 */
			private String checkUrl;
			/**
		 * 0:正常。1：删除
		 */
			private Integer isDelete;
			/**
		 * 创建时间
		 */
			private Date createTime;
			/**
		 * 修改时间
		 */
			private Date updateTime;
			/**
		 * 用户是否填了信息，0：未填，1：已填
		 */
			private Integer isMemberDone;
			/**
		 * 是否确认入职，0：未确认，1：已确认
		 */
			private Integer isHireDone;

	/**
	 * 入职状态：0.未处理，1.已处理
	 */
	private Integer isEntryStatus;

	/**
	 * 合同状态，0：合同未发送，1：合同已发送，2合同已签署
	 */
	private Integer isSendContract;
	/**
	 * 是否已发送offer,0:未发送，1：已发送
	 */
	private Integer isOffer;

	/**
	 * 0:新员工，1：复职员工，离职未满一年，2：旧员工，3：离职超过一年
	 */
	private Integer isReinstate;

	/**
	 * 转正日期
	 */
	private Date regularDay;
	/**
	 * 转正操作 0:未转正，1：转正 ，2：延期转正 3：不予转正，4：提前转正
	 */
	private Integer isRegular;

	/**
	 * 0:转正 未处理，1：已处理
	 */
	private Integer regularIsDone;

	@ApiModelProperty(value="转正备注")
	private String regularRemark;

	@ApiModelProperty(value = "转正提醒 0：未提醒 1：已提醒")
	private Integer isRegularRemind;

	@ApiModelProperty(value = "转正bpm查看链接")
	private String regularCheckUrl;

	@ApiModelProperty(value = "0:待发起 ，1：已发起待审批，2：审批完成，3：作废,")
	private Integer regularBpmStatus;

	/**
	 * 转正附件id
	 */
	private String regularUrlIds;

	@ApiModelProperty(value="参加新员工培训的时间",required = false)
	private Date trainDate;

	@ApiModelProperty(value="参加新员工培训的成绩",required = false)
	private String trainScore;

	/**
	 * 员工状态
	 */
	@ApiModelProperty(value = "员工状态，2：在职，9：实习，3,4,5,6：离职", required = false)
	private String employeestatus;

	/**
	 * 甲方主体id
	 */
	@JsonDeserialize(using = LongJsonDeserializer.class)
	@JsonSerialize(using = LongJsonSerializer.class)
	private Long employerCompanyId;

	@ApiModelProperty(value="是否异地代缴社保，0：不是，1：是",required = false)
	private Integer isRemoteSocialSecurity;

	@ApiModelProperty(value="代缴市",required = false)
	private String socialSecurityCity;

	@ApiModelProperty(value="备注",required = false)
	private String empRemark;

	@ApiModelProperty(value="代缴省",required = false)
	private String socialSecurityProvince;

	//    复职小于1年
	@ApiModelProperty(value="复职月薪",required = false)
	private BigDecimal afterSalary;

	//    复职小于1年
	@ApiModelProperty(value="复职基本工资",required = false)
	private BigDecimal afterBasicSalary;
	//    复职小于1年
	@ApiModelProperty(value="复职模块工资",required = false)
	private BigDecimal afterPerformanceSalary;
}
